GtkAccelLabel: Add a setter for manual accels
authorMatthias Clasen <mclasen@redhat.com>
Sun, 5 Jan 2014 16:12:09 +0000 (11:12 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 5 Jan 2014 16:12:09 +0000 (11:12 -0500)
This is needed to keep the a11y keybinding code working.

docs/reference/gtk/gtk3-sections.txt
gtk/gtkaccellabel.c
gtk/gtkaccellabel.h

index ae68281376bf6a51da981eb6c9821376486bdc07..aaa9c8e63027c4b76b24b304978dd8cd0e6ecf71 100644 (file)
@@ -140,6 +140,7 @@ gtk_accel_label_get_accel_widget
 gtk_accel_label_set_accel_widget
 gtk_accel_label_get_accel_width
 gtk_accel_label_set_accel
+gtk_accel_label_get_accel
 gtk_accel_label_refetch
 <SUBSECTION Standard>
 GTK_ACCEL_LABEL
index 0747f574e2758cff20961c3009d013fb9ba5ed10..3dbfeb8b9b545baeebb2cc2502ca9724f58f07a4 100644 (file)
@@ -981,8 +981,32 @@ gtk_accel_label_set_accel (GtkAccelLabel   *accel_label,
                            guint            accelerator_key,
                            GdkModifierType  accelerator_mods)
 {
+  g_return_if_fail (GTK_IS_ACCEL_LABEL (accel_label));
+
   accel_label->priv->accel_key = accelerator_key;
   accel_label->priv->accel_mods = accelerator_mods;
 
   gtk_accel_label_reset (accel_label);
 }
+
+/**
+ * gtk_accel_label_get_accel:
+ * @accel_label: a #GtkAccelLabel
+ * @accelerator_key: return location for the keyval
+ * @accelerator_mods: return location for the modifier mask
+ *
+ * Returns the keyval and modifier mask set with
+ * gtk_accel_label_set_accel().
+ *
+ * Since: 3.12
+ */
+void
+gtk_accel_label_get_accel (GtkAccelLabel   *accel_label,
+                           guint           *accelerator_key,
+                           GdkModifierType *accelerator_mods)
+{
+  g_return_if_fail (GTK_IS_ACCEL_LABEL (accel_label));
+
+  *accelerator_key = accel_label->priv->accel_key;
+  *accelerator_mods = accel_label->priv->accel_mods;
+}
index 2a56980c9dfd1bccc974b69535703c52a2548736..27a5712ae752322d0b48c264fae7b895bf0645c1 100644 (file)
@@ -101,6 +101,10 @@ GDK_AVAILABLE_IN_3_6
 void       gtk_accel_label_set_accel         (GtkAccelLabel   *accel_label,
                                               guint            accelerator_key,
                                               GdkModifierType  accelerator_mods);
+GDK_AVAILABLE_IN_3_12
+void       gtk_accel_label_get_accel         (GtkAccelLabel   *accel_label,
+                                              guint           *accelerator_key,
+                                              GdkModifierType *accelerator_mods);
 
 /* private */
 gchar *    _gtk_accel_label_class_get_accelerator_label (GtkAccelLabelClass *klass,